1. Field of the Invention
The invention relates to a print processing apparatus and, more particularly, to a print processing apparatus which can be applied to a print system or the like constructed by connecting a printing apparatus and a data processing apparatus via a predetermined communication medium.
2. Related Background Art
FIG. 7 is a block diagram showing a fundamental construction of a whole conventional print processing apparatus. Generally, as shown in FIG. 7, a host computer 100 is connected to a printing apparatus via parallel communicating means such as a Centronics interface or the like or an external I/F (interface) 105 serving as network communicating means, thereby constructing the print processing apparatus.
In the host computer 100, application software (hereinafter, referred to as an application) 102 such as word processor or spreadsheet is operating on what is called basic software 101 such as Windows (registered trademark of Microsoft Corporation in U.S.A.). In the case of printing from the application 102 as mentioned above, a function of a graphic subsystem 103 among subsystems which are provided by the basic software 101 in a program is used.
The graphic subsystem 103 is called GDI (Graphic Device Interface) 1031 in, for example, Windows (registered trademark) and executes a process of image information for a display or a printer. The GDI 1031 dynamically links a module called a device driver in order to absorb dependence of each display device such as display 200 or printer and executes an outputting process to each device.
The module for the printer is particularly called a printer driver 1050. In the printer driver 1050, it is necessary to prepare a function group called DDI (Device Driver Interface) which has been predetermined so as to be implemented into the device driver in accordance with its ability, function, or the like. The GDI 1031 converts an API (Application Programming Interface) call of the application into data for the device driver. The DDI function group is properly called from the GDI 1031 and a predetermined drawing process is executed. In the GDI 1031, a print request from the application is sequentially processed via the printer driver as mentioned above.
A processing system shown in FIG. 7 shows the operation of an image system drawing process for developing a draw command received via the DDI function group of the conventional type into a bit map on the host side and sending it to the printing apparatus.
In the image system drawing process, in order to develop the draw command received via the DDI function group into the bit map, a drawing unit 1047 is built in the host side.
In order to develop the draw command received via the DDI function group into a bit map, a memory area for development is necessary. Generally, since it is difficult to obtain a memory for one page on the host side, a memory called a band memory 1048 whose capacity is less than that of one page is obtained and each draw command of one page is divided a plurality of number of times and developed. Such a process is called a banding process.
As a conventional method of realizing the banding process, EMF banding executed in Windows (registered trademark) will be described. An intermediate file called an EMF file 1049 shown in FIG. 7 is formed, all draw commands in the EMF file 1049 are searched every band a plurality of number of times, only a drawing image corresponding to the band is received and transferred to the drawing unit 1047, and the drawing image of the band portion in one page is developed into the band memory and transferred to the printer.
FIG. 6 is a diagram showing a flowchart for the EMF banding process.
Step 3-1:
In response to the draw command of the application, the GDI 1031 forms the EMF file 1049 for recording each draw command. Each draw command has been recorded in the EMF file 1049 from the head of the file in correspondence to drawing order. A circumscribed rectangle information in a drawing range of the draw command has been recorded in a record of each draw command.
Step 3-2:
The GDI 1031 inquires of the printer driver 1050 about a band position in the page. The printer driver 1050 answers the band position in the page in consideration of the band memory 1048 obtained by the drawing unit 1047.
If the printer driver 1050 wants to finish the banding process in the page, it answers (x, y)=(−1, −1) as a special position as a left top position of a band rectangle.
Step 3-3:
If the band position notified from the printer driver 1050 is (x, y)=(−1, −1), the processing routine is finished. In the other cases, a process in step 3-4 is executed.
Step 3-4:
The present draw command in the EMF file 1049 is set to the 0th element. The 0th draw command is a one-preceding element of the draw command stored at the head of the EMF file 1049 and is an element which does not actually exist.
Step 3-5:
The next draw command in the direction from the head to the last on the EMF file 1049 is set to the present draw command.
Step 3-6:
Whether the circumscribed rectangle information of the present draw command overlaps with a range of the band notified from the printer driver 1050 or not is discriminated. If it overlaps, the draw command needs to be drawn in the present band and belongs to the present band.
If the present draw command belongs to the present band, step 3-7 follows. If the present draw command does not belong to the present band, step 3-8 follows.
Step 3-7:
Draw information of the present draw command is transferred to the drawing unit 1047 via the GDI 1031 and the printer driver 1050 and drawn in the band memory 1048. At this time, a relative correcting process of a band coordinate origin and a coordinate origin in the page is executed to the draw information concerned with the position of the present draw command in a manner such that when each band is arranged, a drawing image of one page is correctly constructed.
Step 3-8:
Whether the present draw command is an END element indicative of the end of drawing or not is discriminated.
If the present draw command is the END element, step 3-2 follows.
If the present draw command is not the END element, step 3-5 follows.
By using the foregoing EMF banding process, the drawing images in the intermediate language belonging to a partial space of the page designated from the printer driver 1050 can be reproduced in drawing order.
According to the conventional technique, as shown in FIGS. 5A and 5B, by using the foregoing EMF banding process, a drawing image 500 of one page is spatially divided in accordance with the sizes which can be obtained on the host of band memories 510, 520, 530, and 540 having planes of physical colors which the printing apparatus has, reproduction is executed by using the EMF banding every space, and a drawing developing process is executed to the band memories. A banding system of reproducing by spatially dividing the page is called a spatial banding hereinbelow.
In the case of FIGS. 5A and 5B, the physical colors which the printing apparatus has are yellow, magenta, cyan, and black, and the planes in the band memories are indicated by reference numerals 510, 520, 530, and 540, respectively. As a band memory which is used for the drawing reproduction of each dividing space of one page, the memory obtained upon first reproduction is reused. By reproducing the coordinates of each dividing space by the EMF banding process, the drawing images on the band memories having all physical colors which the printing apparatus has are completed by the banding process of one time.
For example, since a cyan ellipse drawing image 502 and a magenta straight line drawing image 503 are included in the top dividing area of the page, the ellipse drawing image 502 is drawn in the cyan plane 530 and the straight line drawing image 503 is drawn in the magenta plane 520 in the band memory of this dividing area. At this time, the color of the area in a shape of the magenta straight line drawing image 503 is eliminated in the ellipse drawing image 502 of the cyan plane in accordance with the drawing order.
The foregoing conventional banding realizing method has the following problems. The first problem is that since the drawing image of one page is divided into a plurality of spaces and banding processed, it is necessary to execute a coordinate converting process of each band to the drawing images constructing the intermediate language and a calculation load is caused upon reproduction.
The second problem is that since the intermediate language is developed into the band memories having all of the physical color planes which the printing apparatus has, when the band memories after completion of the drawing development are provided for the printing apparatus such as a laser beam printer or the like constructed by one drum which transfers the color onto the drum or an intermediate transfer material every physical color and reproduces, it is necessary to reconstruct information of one page every physical color plane. It is necessary to keep memory means for such reconstruction. Reproduction start time is delayed by the reconstructing process.